﻿// Decompiled with JetBrains decompiler
// Type: Netick.INetickSocket
// Assembly: Netick, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
// MVID: 6726ECA1-C773-4CF7-8952-E81B30D93B52
// Assembly location: D:\WorkSpaceDemo\UPM\NetickForUnity\Netick\Runtime\Netick.dll
// XML documentation location: D:\WorkSpaceDemo\UPM\NetickForUnity\Netick\Runtime\Netick.xml

#nullable disable
namespace Netick;

public interface INetickSocket
{
  bool Initialize();

  void Deinitialize();

  void StartClient(long sendBufferSize, long receiveBufferSize);

  void StartServer(int port, long sendBufferSize, long receiveBufferSize);

  void Shutdown();

  bool Connect(ref IEndPoint address);

  IEndPoint CreateFromIpPort(string ip, int port);

  int Poll();

  unsafe int Receive(out IEndPoint address, byte* buffer, int bufferSize);

  unsafe void Send(IEndPoint address, byte* data, int dataLength);
}
